JBoss.orgCommunity Documentation
JBoss Communications SS7 Stack
provides Shell client to manage configuration of SS7 Stack Services. This chapter describes how to install and start client. Also it describes available
commands and provides examples.
To see examples of specific flow, to perform certain tasks, please refer to sections in chapter devoted to
Linksets
, SCCP
or M3UA
.
Shell client can be started with following command from
$JBOSS_HOME/bin
:
[$] ./ss7-run.sh
Once console starts, it will print following information:
========================================================================= Mobicents SS7: release.version=1.0.0-SNAPSHOT This is free software, with components licensed under the GNU General Public License version 2 and other licenses. For further details visit http://mobicents.org ========================================================================= mobicents>
The
ss7-run
script supports following options
Usage: SS7 [OPTIONS] Valid Options -v Display version number and exit -h This help screen
Shell needs to connect to managed instance. Command to connect has following structure:
ss7 connect <IP> <PORT>
Example 5.1. Connec to remote machine
mobicents>ss7 connect 10.65.208.215 3435 mobicents(10.65.208.215:3435)>
Host IP and port are optional, if not specified, shell will try to connect to
127.0.0.1:3435
Command to disconnect has following structure:
ss7 discconnect
Linksets are managed by
linkset
command. It allows to perform following:
create linkset
delete linkset
activate linkset
deactivate linkset
create link
delete link
activate link
deactivate link
list state of linksets and present links
Linkset can be create by issuing command with following structure:
linkset create <linkset-type> opc <point-code> apc <point-code> ni <network-id> <linkset-name>
or in case of dialogic:
linkset create dialogic opc <point-code> apc <point-code> ni <network-id> srcmod <src-mode> destmod <dest-mode> <linkset-name>
or in case of M3UA:
linkset create m3ua opc <point-code> apc <point-code> ni <network-id> as <as-name> <linkset-name>
Where:
refers to type of linkset to be created, ie.
dahdi
,
dialogic
or
m3ua
. Correct values depend on which linkset factories have been deployed.
is simply
MTP
point - either local(
opc
) or remote(
dpc
)
is simply network identifier. It can have following values:
International network
Spare (for international use only)
National network
Reserved for national use
simple string name, which identifies linkset
Name of AS that M3UALinkset wrapps. Make sure that AS is already created as explained in Section 5.5.2.1, “Create AS”
Example 5.3. Linkset creation
mobicents(10.65.208.215:3435)>linkset create dahdi opc 1 apc 2 ni 0 linkset1 LinkSet successfully added mobicents(10.65.208.215:3435)>linkset create dialogic opc 3 apc 4 ni 3 srcmod 1 destmod 2 linkset2 LinkSet successfully added
Linkset can be deleted by issuing command with following structure:
linkset delete <linkset-name>
Where:
is name set during link creation
Example 5.4. Linkset Removal
mobicents(10.65.208.215:3435)>linkset delete linkset1 LinkSet successfully deleted
Linkset can be activated by issuing command with following structure:
linkset activate <linkset-name>
Where:
is name set during link creation
Example 5.5. Linkset Activation
mobicents(10.65.208.215)>linkset activate linkset1 LinkSet activated successfully
Linkset can be deactivated by issuing command with following structure:
linkset deactivate <linkset-name>
Where:
is name set during link creation
Example 5.6. Linkset Deactivateion
mobicents(10.65.208.215)>linkset deactivate linkset1 LinkSet deactivated successfully
Link
can be created in
Linkset
by issuing command with following structure:
linkset link create span <span-num> code <code-num> channel <channel-num> <linkset-name> <link-name>
Where:
integer number. It represents port number in card(indexed from 0).
link code(sls assigned to this link).
integer number indicating time slot number(TDM time slot).
is name set during link creation.
name which identifies link in linkset.
Example 5.7.
mobicents(10.65.208.215:3435)>linkset link create span 1 code 1 channel 1 linkset1 link1 Link successfully added
Link
can be removed from in
Linkset
by issuing command with following structure:
linkset link delete <linkset-name> <link-name>
Where:
is name set during link creation
name which identifies link in linkset
Example 5.8. Link Removal
mobicents(10.65.208.215:3435)>linkset link delete linkset1 link1 Link successfully deleted
Link can be activated by issuing command with following structure:
linkset link activate <linkset-name> <link-name>
Where:
is name set during link creation
name which identifies link in linkset
Example 5.9. Link Activation
mobicents(10.65.208.215:3435)>linkset link activate linkset1 link1 Link activated successfully
Link can be deactivated by issuing command with following structure:
linkset link deactivate <linkset-name> <link-name>
Where:
is name set during link creation
name which identifies link in linkset
Example 5.10. Link Deactivateion
mobicents(10.65.208.215:3435)>linkset link deactivate linkset1 link1 Link deactivated successfully
Linkset and Link's status can be viewed by issuing command with following structure:
linkset show
Example 5.11. Linkset Status
mobicents(10.65.208.215:3435)>linkset show linkset1 dahdi opc=1 apc=2 ni=0 state=UNAVAILABLE link1 span=1 channelId=1 code=1 state=UNAVAILABLE
The possible state of Linkset are
UNAVAILABLE : Indicates the linkset does not have any “available” links and cannot transport traffic
SHUTDOWN : Indicates the linkset has been shutdown in the configuration
AVAILABLE : Indicates the linkset has at least one available link and can carry traffic
The possible state of Link are
UNAVAILABLE : Indicates the link is not available to carry traffic. This can occur if the link is remotely or locally inhibited by a user. It can also be unavailable if MTP2 has not been able to successfully activate the link connection.
SHUTDOWN : Indicates the link has been shutdown in the configuration.
AVAILABLE : Indicates the link is active and able to transport traffic
FAILED : A link is FAILED when the link is not shutdown but is unavailable at layer2 for some reason. For example Initial Alignment failed or the link test messages sent by MTP3 are not being acknowledged.
SCCP provides connectionless and connection-oriented network services. This includes address(GTT) translation and routing, flow control segmentation and reassembly.
A global title is an address (e.g., a dialed 800 number, calling card number, or mobile subscriber identification number) which is translated by SCCP into a destination point code and subsystem number. A subsystem number uniquely identifies an application at the destination signaling point. SCCP is used as the transport layer for TCAP -based services
As SCCP acts as message router, it requires means to configure routing information. CLI provides way to easily manage routing rules information in JBoss Communications SCCP implementation.
User should also configure the remote subsystem number and remote signaling pointcode. In some cases where global title is used, SCCP will only require configuring of remote signaling pointcode and configuring of remote subsystem is not required.
SCCP routing rules are managed by sccp rule
command. It allows to perform following:
sccp rule create
sccp rule modify
sccp rule delete
sccp rule show
Rule can be create by issuing command with following structure:
sccp rule create <id> <mask> <address-indicator> <point-code> <subsystem-number> <translation-type> <numbering-plan> <nature-of-address-indicator> <digits> <primary-address-id> <backup-address-id>
This command should be specified after primary_add
and backup_add
are configured.
Please refer Section 5.4.2, “Address Management” on how to configure primary_add
and backup_add
A unique number to identify this rule
mask defines which part of the originally dialed digits remains in the translated digits and which part is replaced by the digits from primary or backup address. mask is divided into sections by separator /. The number of sections in mask should be equal to sections in digits passed in this command and sections in primary or backup address
Table 5.1. mask definitions
Mnemonic | Function |
---|---|
- | Ignore |
/ | Separator used to split the mask into sections. |
K | Keep the original dialed digits of this section into translated digits |
R | Replace the original dialed digits of this section with same section from primary or backup address into translated digits |
The address indicator is the first field in SCCP Party Address(called/calling) and is one octet in length. Its function is to indicate which information elements are present so that the address can be interpreted, in other words, it indicates the type of addressing information that is to be found in the address field. The addressing information from original global title is then compared with passed address information to match the rule.
Point code. This is ignored if bit 0 of address-indicator is not set.
Subsystem Number. This is ignored if bit 1 of address-indicator is not set.
Translation type. This is ignored if GT Indicator is 0000 or 0001
Table 5.2. Translation Type Values
Value | Description |
---|---|
0 | Unknown |
1 to 63 | International Service |
64 to 127 | Spare |
128 to 254 | National Network Specific |
255 | Reserved for Expansion |
The Number Plan (NP) field specifies the numbering plan that the address information follows. This is ignored if GT Indicator is 0000, 0001 or 0010
The Nature of Address Indicator (NAI) field defines the address range for a specific numbering plan. This is only used if GT Indicator is 0100
Specifies the string of digits divided into subsections using separator '/' depending on if mask contains separator. The dialed digits should match with theses digits as per rule specified bellow
Table 5.3. digit pattern
Value | Description |
---|---|
- | padding - ignored |
* | wildcard - matches any number of digits |
? | wildcard - matches exactly one digit |
/ | sparator used to split the digit pattern into sections. Each section can be processed differently as specified by mask parameter. |
Identifies the SCCP Address used as the primary translation
Identifies the SCCP Address used as the backup translation incase if pointcode specified by primary address is not available
Example 5.12. SCCP Rule creation
mobicents(10.65.208.215:3435)>sccp rule create 1 R 71 2 8 0 0 3 123456789 1 mobicents(10.65.208.215:3435)>sccp rule create 2 R 71 2 8 0 0 3 123456789 1 1
The command is used to define primary or backup address of translation. The global title
address information of this command is combined with the global title being translated by examining the
mask provided in the sccp rule create
command.The syntanx remains same except for primary address
sccp primary_add
is used and for backup address sccp backup_add
is used
sccp primary_add create
sccp backup_add create
sccp primary_add modify
sccp backup_add modify
sccp primary_add delete
sccp backup_add delete
sccp primary_add show
sccp backup_add show
Address can be create by issuing command with following structure:
For primary address
sccp primary_add create <id> <address-indicator> <point-code> <subsystem-number> <translation-type> <numbering-plan> <nature-of-address-indicator> <digits>
For backup address
sccp backup_add create <id> <address-indicator> <point-code> <subsystem-number> <translation-type> <numbering-plan> <nature-of-address-indicator> <digits>
A unique number to identify this address
The address indicator is the first field in SCCP Party Address(called/calling) and is one octet in length. Its function is to indicate which information elements are present so that the address can be interpreted, in other words, it indicates the type of addressing information that is to be found in the address field. The addressing information from original global title is then compared with passed address information to match the rule.
Point code. This is ignored if bit 0 of address-indicator is not set.
Subsystem Number. This is ignored if bit 1 of address-indicator is not set.
Translation type. This is ignored if GT Indicator is 0000 or 0001
Table 5.4. Translation Type Values
Value | Description |
---|---|
0 | Unknown |
1 to 63 | International Service |
64 to 127 | Spare |
128 to 254 | National Network Specific |
255 | Reserved for Expansion |
The Number Plan (NP) field specifies the numbering plan that the address information follows. This is ignored if GT Indicator is 0000, 0001 or 0010
The Nature of Address Indicator (NAI) field defines the address range for a specific numbering plan. This is only used if GT Indicator is 0100
The global title address information to translate to, specified as string of digits divided into subsections using separator '/' depending on if mask contains separator.
In addition the digits string can contain
Table 5.5. Address digit
Value | Description |
---|---|
- | padding - ignore |
/ |
Separtor to split the digits into sections. Each section is processed differently as specified
by the mask in sccp rule create command.
|
Example 5.14. SCCP Primary Address creation
mobicents(10.65.208.215:3435)>sccp primary_add create 1 71 2 8 0 0 3 123456789
Example 5.15. SCCP Backup Address creation
mobicents(10.65.208.215:3435)>sccp backup_add create 1 71 3 8 0 0 3 123456789
For primary address
sccp primary_add delete <id>
For backup address
sccp backup_add delete <id>
Where:
is id set during address creation
Example 5.16. Primary Address Removal
mobicents(10.65.208.215:3435)>sccp primary_add delete 1 Rule successfully removed
Example 5.17. Backup Address Removal
mobicents(10.65.208.215:3435)>sccp backup_add delete 1 Rule successfully removed
SCCP resources includes remote signaling point and remote subsytem.
Each remote signaling point that SCCP can communicate with must be configured using sccp rsp
command
sccp rsp create
sccp rsp modify
sccp rsp delete
sccp rsp show
Remote signaling point can be create by issuing command with following structure:
sccp rsp create <id> <remote-spc> <rspc-flag> <mask>
A unique number to identify this remote signaling point
The remote signaling point
32 bit value. Not used for now. Reserved for future
32 bit value. Not used for now. Reserved for future
Example 5.18. Remote Signalin Point creation
mobicents(10.65.208.215:3435)>sccp rsp create 1 6477 0 0
sccp rsp delete <id>
Where:
is id set during remote signaling point creation
SCCP resources includes remote signaling point and remote subsytem.
Each remote subsystem that SCCP can communicate with must be configured using sccp rss
command
sccp rss create
sccp rss modify
sccp rss delete
sccp rss show
This command should be specified after remote signaling point is configured. Please refer Section 5.4.3, “Remote Signaling Point Management” on how to configure remote signaling point
Remote subsystem can be created by issuing command with following structure:
sccp rss create <id> <remote-spc> <remote-ssn> <rss-flag>
A unique number to identify this remote subsystem
The remote signaling point where this remote susbsytem is deployed
The remote subsystem number
32 bit value. Not used for now. Reserved for future
sccp rss delete <id>
Where:
is id set during remote subsystem creation
M3UA stack is also responsible to manage the SCTP Associations.
M3UA - SCTP is managed by sctp
command. It allows to perform following:
sctp server create
sctp server destroy
sctp server start
sctp server stop
sctp server show
sctp association create
sctp association destroy
sctp association show
SCTP Server can be created by issuing command with following structure:
sctp server create <server-name> <host-ip> <host-port>
Where:
Unique name assigned to the server.
The host ip address where underlying SCTP server socket will bind
The host port where underlying SCTP server socket will bind
Example 5.22. SCTP Server creation
mobicents(127.0.0.1:3436)>sctp server create TestServer 127.0.0.1 2905 Successfully added Server=TestServer
SCTP Server can be destroyed by issuing command with following structure:
sctp server destroy <server-name>
Where:
Unique name of the server to be destroyed. Make sure server is stopped before destroying.
Example 5.23. Destroy SCTP Server
mobicents(127.0.0.1:3436)>sctp server destroy TestServer Successfully removed Server=TestServer
SCTP Server can be started by issuing command with following structure:
sctp server start <server-name>
Where:
Unique name of the server to be started. The underlying SCTP server socket is bound to ip:port configured at creation time.
Example 5.24. Start SCTP Server
mobicents(127.0.0.1:3436)>sctp server start TestServer Successfully started Server=TestServer
SCTP Server can be stopped by issuing command with following structure:
sctp server stop <server-name>
Where:
Unique name of the server to be stopped. The underlying socket is closed at this point and all resource are released.
Example 5.25. Stop SCTP Server
mobicents(127.0.0.1:3436)>sctp server stop TestServer Successfully stopped Server=TestServer
SCTP Server's configuration can be viewed by issuing command with following structure:
sctp server show
Association can be created by issuing command with following structure:
sctp association create <assoc-name> <CLIENT | SERVER> <server-name> <peer-ip> <peer-port> <host-ip> <host-port>
Where:
Unique name of the association
If this association is client side or server side. If its client side, it will initiate the connection to peer and bind's to host-ip:host-port trying to connect to peer-ip:peer-port.
If its server side, it waits for peer to initiate connection. The connection request will be accepted from peer-ip:peer-port. host-ip and host-port is not required, even if passed it will be ignored
If this association is server side, server-name must be passed to associate with server. Server with server-name should have already been created by using command Section 5.5.1.1, “Create SCTP Server”
If this association is client side, server-name shouldn't be passed.
Example 5.27. Create CLIENT SCTP Association
mobicents(192.168.56.1:3436)>sctp association create Assoc1 CLIENT 192.168.56.101 2905 192.168.56.1 2905 Successfully added client Association=Assoc1
Example 5.28. Create SERVER SCTP Association
mobicents(192.168.56.1:3436)>sctp association create Assoc2 SERVER TestServer 192.168.56.1 2905 Successfully added server Association=TestServer
Association can be destroyed by issuing command with following structure:
sctp association destroy <assoc-name>
Where:
Unique name of the association to be destroyed
Example 5.29. Destroy SCTP Association
mobicents(192.168.56.1:3436)>sctp association destroy Assoc1 Successfully removed association=Assoc1
M3UA is managed by m3ua
command. It allows to perform following:
m3ua as create
m3ua as destroy
m3ua as show
m3ua asp create
m3ua asp destroy
m3ua asp show
m3ua asp start
m3ua asp stop
m3ua as add
m3ua as remove
m3ua route add
m3ua route remove
m3ua route show
Application Server (AS) can be created by issuing command with following structure:
m3ua as create <as-name> <AS | SGW | IPSP> mode <SE | DE> ipspType <client | server> rc <routing-context> traffic-mode <traffic mode>
Where:
simple string name, which identifies AS. Make sure this is unique
Specify if this is of type AS or SGW or IPSP
Specify if the single or double exchange of ASP State Maintenance (ASPSM) and ASP Traffic Maintenance (ASPTM) messages should be performed
If As if of type IPSP, speicfy here if its client or server type.
refers to Routing Context already configured on M3UA stack on SGW side.
Traffic mode for ASP's. By default its loadshare. Mobicents M3UA only supports loadshare and override, broadcast is not supported.
Example 5.31. AS (IPSP) creation
mobicents(127.0.0.1:3435)>m3ua as create AS1 IPSP mode DE ipspType server rc 1 traffic-mode loadshare Successfully created AS name=AS1
Example 5.32. AS creation
mobicents(127.0.0.1:3435)>m3ua as create AS2 AS mode SE rc 100 traffic-mode loadshare Successfully created AS name=AS2
Application Server (AS) can be destroyed by issuing command with following structure:
m3ua as destroy <as-name>
Where:
Simple string name, which identifies AS. Make sure AS is in state INACTIVE and all the ASP's are unassigned before destroying
Example 5.33. Destroy AS
mobicents(127.0.0.1:3435)>m3ua as destroy AS1 Successfully destroyed AS name=AS1
Application Server configured can viewed by issuing command with following structure:
m3ua as show
Application Server Process (ASP) can be created by issuing command with following structure:
m3ua asp create <asp-name> <sctp-association>
Where:
Name of this ASP. It should be unique
name of SCTP Association
Example 5.35. ASP creation
mobicents(127.0.0.1:3435)>m3ua asp create ASP1 Assoc1 Successfully created AS name=ASP1
ASP can be destroyed by issuing command with following structure:
m3ua asp destroy <asp-name>
Where:
Name of this ASP to be destroyed. Make sure ASP is stopped before destroying
Example 5.36. Destroy ASP
mobicents(127.0.0.1:3435)>m3ua asp destroy ASP1 Successfully destroyed ASP name=ASP1
ASP configured can be viewed by issuing command with following structure:
m3ua asp show
Application Server Process (ASP) can be started with following structure
m3ua asp start <asp-name>
Where:
name of ASP created earlier. Make sure ASP you are trying to start is assigned to at least one AS
Example 5.38. Start ASP
mobicents(127.0.0.1:3435)>m3ua asp start ASP1 Successfully started ASP name=ASP1
Application Server Process (ASP) can be stopped with following structure
m3ua asp stop <asp-name>
Where:
name of ASP started earlier.
Example 5.39. Stop ASP
mobicents(127.0.0.1:3435)>m3ua asp stop ASP1 Successfully stopped ASP name=ASP1
Application Server Process (ASP) can be assigned to Application Server (AS) with following structure
m3ua as add <as-name> <asp-name>
Where:
name of AS created earlier
name of ASP created earlier
Mobicents M3UA supports configuring ASP to process signalling traffic related to more than one Application Server, over a single SCTP Association. However you need to make sure that all the AS's that ASP is shared with has Routing Context (unique) configured.
Example 5.40. Add ASP to AS
mobicents(127.0.0.1:3435)>m3ua as add AS1 ASP1 Successfully added ASP name=ASP1 to AS name=AS1
Application Server Process (ASP) can be unassigned from Application Server (AS) with following structure
m3ua as remove <as-name> <asp-name>
Where:
name of AS
name of ASP
Example 5.41. Remove ASP from AS
mobicents(127.0.0.1:3435)>m3ua as remove AS1 ASP1 Successfully removed ASP name=ASP1 from AS name=AS1
Configure the destination point code that message will be routed to
m3ua route add <as-name> <dpc> <opc> <si>
Where:
name of AS created earlier
Destination point code
Originating point code
Service Indicator
Remove the As configured for the destination point code
m3ua route remove <as-name> <dpc> <opc> <si>
Where:
name of AS assigned to route message for this dpc
Destination point code
Originating point code
Service Indicator